cmake_minimum_required(VERSION 3.29)
project(CourseGrading)

set(CMAKE_CXX_STANDARD 17)

add_executable(CourseGrading main.cpp)
add_executable(Test test.cpp)
add_executable(DivideAndConquer_MergeSort DivideAndConquer_MergeSort.cpp)
add_executable(Greedy_MaxActivities Greedy_MaxActivities.cpp)
add_executable(Greedy_MaxApples Greedy_MaxApples.cpp)
add_executable(DivideAndConquer_ClosestPointPair DivideAndConquer_ClosestPointPair.cpp)
add_executable(DynamicProgramming_MatrixChainMultiply DynamicProgramming_MatrixChainMultiply.cpp)
add_executable(DynamicProgramming_SteerBarCutting DynamicProgramming_SteerBarCutting.cpp)
add_executable(DivideAndConquer_ReversePair DivideAndConquer_ReversePair.cpp)
add_executable(Graph_StronglyConnectedComponent Graph_StronglyConnectedComponent.cpp)
add_executable(DivideAndConquer_FindKthSmallest DivideAndConquer_FindKthSmallest.cpp)
add_executable(DivideAndConquer_MaxSubArray DivideAndConquer_MaxSubArray.cpp)
add_executable(DynamicProgramming_Knapsack DynamicProgramming_Knapsack.cpp)
add_executable(DynamicProgramming_LongestCommonSubsequence DynamicProgramming_LongestCommonSubsequence.cpp)
add_executable(DynamicProgramming_LongestCommonSubstring DynamicProgramming_LongestCommonSubstring.cpp)
add_executable(DynamicProgramming_MaxActivitiesWithWeight DynamicProgramming_MaxActivitiesWithWeight.cpp)
add_executable(Graph_MaxPartiteMatching Graph_MaxPartiteMatching.cpp)
add_executable(Graph_MinimumSpanningTree_Prim Graph_MinimumSpanningTree_Prim.cpp)
add_executable(Graph_SingleSourceClosestPath_Dijkstra Graph_SingleSourceClosestPath_Dijkstra.cpp)
add_executable(Graph_AllPairsShortestPaths_Floyd Graph_AllPairsShortestPaths_Floyd.cpp)
add_executable(Greedy_HuffmanEncoding Greedy_HuffmanEncoding.cpp)
add_executable(FFT_Equalizations DivideAndConquer_Equalizations_FFT.cpp)
add_executable(Graph_AllPairsReachability_Floyd_Warshall Graph_AllPairsReachability_Floyd_Warshall.cpp)
add_executable(Graph_EulerPath Graph_EulerPath.cpp)
add_executable(Graph_JudgeCycle Graph_JudgeCycle.cpp)
add_executable(Graph_UndirectedGraphConnectivity Graph_UndirectedGraphConnectivity.cpp)
add_executable(Greedy_MinimumWeightedPathLengthOfTree Greedy_MinimumWeightedPathLengthOfTree.cpp)
